% \iffalse meta-comment % Copyright (C) 1989-1992 by Frank Mittelbach, Rainer Schoepf. % All rights reserved. % This file is part of the NFSS (New Font Selection Scheme) package. % IMPORTANT NOTICE: % You are not allowed to change this file. You may however copy % this file to a file with a different name and then change the copy % if you obey the restrictions on file changes described in % readme.mz. % You are allowed to distribute this file under the condition that % it is distributed together with all files mentioned in readme.mz3. % If you receive only some of these files from someone, complain! % You are NOT ALLOWED to distribute this file alone. You are NOT % ALLOWED to take money for the distribution or use of either this % file or a changed version, except for a nominal charge for copying % etc. % For error reports in case of UNCHANGED versions see readme files. % Please do not request updates from us directly. Distribution is % done through Mail-Servers and TeX organizations. % \fi \def\fileversion{v1.0g} \def\filedate{92/06/20} \def\docdate {92/06/20} %% \CheckSum{81} %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z %% Digits \0\1\2\3\4\5\6\7\8\9 %% Exclamation \! Double quote \" Hash (number) \# %% Dollar \$ Percent \% Ampersand \& %% Acute accent \' Left paren \( Right paren \) %% Asterisk \* Plus \+ Comma \, %% Minus \- Point \. Solidus \/ %% Colon \: Semicolon \; Less than \< %% Equals \= Greater than \> Question mark \? %% Commercial at \@ Left bracket \[ Backslash \\ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} %\iffalse % This is a META comment % File `euscript.doc'. %% Copyright (C) 1990-1992 Frank Mittelbach and Rainer Sch\"opf, %% all rights reserved. % \changes{1.0g}{92/06/20}{Driver file added.} % \changes{1.0g}{92/06/20}{Documentation updated.} % \MakeShortVerb{\|} % \def\Warning#1{\begin{quote}{\bf Warning:\quad}#1\end{quote}} % \title{The {\tt euscript} style option\thanks % {This file has version number \fileversion, dated \filedate. % The documentation was last revised on \docdate}\\ % for use with the new font selection scheme} % \author{Frank Mittelbach \and Rainer Sch\"opf} % \maketitle % \section{Introduction} % This style option sets up some font shape definition to use the Euler % script symbols in math mode. It can only be used with the new font % selection scheme but does not require the option {\tt amstex}. % \DescribeMacro\EuScript % To access the Euler Script alphabet a \meta{math alphabet identifier} % called |\EuScript| is provided. For example, the input % \begin{verbatim} % \EuScript{A} \neq \cal{A} %\end{verbatim} % will produce % \EuScript{A} \neq \cal{A} % provided the {\tt margid} option is in force. Otherwise the % \meta{math alphabet identifier}s don't have arguments but simply % switch to the corresponding fonts so that the equation is better % entered as % \begin{verbatim} % {\EuScript A} \neq {\cal A} %\end{verbatim} % even if in this case the results are the same. % Here is a complete table of the beautiful letters drawn by Hermann % Zapf: % \begin{displaymath} % \newcommand{\E}[1]{\EuScript{#1} &} % \begin{array}{*{10}c} % \E{A} \E{B} \E{C} \E{D} \E{E} \E{F} \E{G} \E{H} \E{I} \\ % \E{J} \E{K} \E{L} \E{M} \E{N} \E{O} \E{P} \E{Q} \E{R} \\ % \E{S} \E{T} \E{U} \E{V} \E{W} \E{X} \E{Y} \E{Z} % \end{array} % \end{displaymath} % \StopEventually{} % \section{The Implementation} % We have three things to do: 1) identifying the current style option, % 2) enlarging the font shape tables and 3) defining the \meta{math % alphabet identifier}. % We start by writing to the VDU and the transcript file. % \begin{macrocode} %<*style> \typeout{Style Option: `euscript' \fileversion\space <\filedate> (FMi and RmS)} \typeout{English Documentation \@spaces\@spaces\space <\docdate> (FMi)} % \end{macrocode} % But we should also check if the new font selection is actually in % force otherwise the user will get a lot of uninstructive error % messages later on. % \begin{macrocode} \@ifundefined{selectfont} {\@latexerr{`euscript' style option can only be used with the new font selection scheme}\@eha \endinput}{} % \end{macrocode} % Now we define the font shapes for Euler Script medium and bold. % \changes{v1.0c}{90/01/28}{Fifth argument for `new@fontshape.} % \begin{macrocode} \new@fontshape{eus}{m}{n}{% <5>eusm5% <6>eusm6% <7>eusm7% <8>eusm8% <9>eusm9% <10>eusm10% <11>eusm10 at10.95pt% <12>eusm10 at12pt% <14>eusm10 at14.4pt% <17>eusm10 at17.28pt% <20>eusm10 at20.74pt% <25>eusm10 at24.88pt}{} \new@fontshape{eus}{b}{n}{% <5>eusb5% <6>eusb6% <7>eusb7% <8>eusb8% <9>eusb9% <10>eusb10% <11>eusb10 at10.95pt% <12>eusb10 at12pt% <14>eusb10 at14.4pt% <17>eusb10 at17.28pt% <20>eusb10 at20.74pt% <25>eusb10 at24.88pt}{} % \end{macrocode} % If there is any |\skewchar| for accents it should be added to % the `extra' macro. % \Warning{Maybe we have to add something here.} % \begin{macrocode} \extra@def{eus}{}{\noaccents@} % \end{macrocode} % Now we define the \meta{math alphabet identifier}. At the moment % this is only a copy of the documentation for |\frak| from {\tt % amsfonts.doc} with a rename of the macro names. % \begin{macro}{\EuScript} % \begin{macro}{\pEuScript} % \begin{macro}{\EuScript@} % The $\EuScript{EULER\ SCRIPT}$ alphabet will be accessed by the % command |\EuScript| inside of math mode. Since the current % \LaTeX{} version 2.9 has problems with so called {\em fragile\/} % commands we define |\EuScript| simply as: % \begin{macrocode} \def\EuScript{\protect\pEuScript} % \end{macrocode} % Note that this command has no arguments, it simply calls or % protects (depending on the current meaning of |\protect|) % the |\pEuScript| macro. This macro now checks if it is called % in math mode and if so calls the correct \meta{math alphabet % identifier}. % \begin{macrocode} \def\pEuScript{\RIfM@\expandafter\EuScript@\else \expandafter\nonmatherr@\expandafter\EuScript\fi} % \end{macrocode} % Now we define the \meta{math alphabet identifier} |\EuScript@|. % In this case we do not give a default value since the % corresponding font exists in different weights. % \begin{macrocode} \newmathalphabet\EuScript@ \addtoversion{normal}\EuScript@{eus}{m}{n} \addtoversion{bold}\EuScript@{eus}{b}{n} % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % \begin{macro}{\RIfM@} % Some code from {\tt amstex.sty}: % \changes{v1.0e}{91/11/22}{Added missing definition.} % \begin{macrocode} \def\RIfM@{\relax\protect\ifmmode} % \end{macrocode} % \end{macro} % \begin{macro}{\noaccents@} % If we don't have a definition for |\noaccents@| we provide a % dummy. % \changes{v1.0f}{92/02/09}{Added another missing definition.} % \begin{macrocode} \ifx\noaccents@\undefined \let\noaccents@\@empty % % \end{macrocode} % \end{macro} % \section{The documentation driver file} % The next bit of code contains the documentation driver file for % \TeX{}, i.e., the file that will produce the documentation you are % currently reading. It will be extracted from this file by the {\tt % docstrip} program. % \begin{macrocode} %<+driver>\documentstyle[euscript,newlfont,doc]{article} %<+driver> %<+driver>% dimensions from ltugboat.sty: %<+driver> %<+driver>\setlength\textwidth{31pc} %<+driver>\setlength\textheight{54pc} %<+driver>\setlength{\parindent}{0pt} %<+driver>\setlength{\parskip}{2pt plus 1pt minus 1pt} %<+driver>\setlength{\oddsidemargin}{8pc} %<+driver>\setlength{\marginparwidth}{8pc} %<+driver>\setlength{\topmargin}{-2.5pc} %<+driver>\setlength{\headsep}{20pt} %<+driver>\setlength{\columnsep}{1.5pc} %<+driver>\setlength{\columnwidth}{18.75pc} %<+driver> %<+driver>\EnableCrossrefs %<+driver>%\DisableCrossrefs % Say \DisableCrossrefs if index is ready %<+driver> %<+driver>\RecordChanges % Gather update information %<+driver> %<+driver>\CodelineIndex % Index code by line number %<+driver> %<+driver>%\OnlyDescription % comment out for implementation details %<+driver>%\OldMakeindex % use if your MakeIndex is pre-v2.9 %<+driver>\begin{document} %<+driver> \DocInput{euscript.doc} %<+driver>\end{document} % \end{macrocode} % \Finale \endinput